When the number of data received in an incorrect order due to, for example, a loss of data, reaches a certain value or larger in a data communication network, the data receiving side instructs the data transmitting side to retransmit the data in some cases.
In the transmission control protocol (TCP), which is widely used in packet communications, high-speed retransfer is performed when it is found out, according to a duplicate acknowledgement, that the number of TCP segments received in an incorrect order is larger than or equal to a certain value. In high-speed retransfer in the TCP, a receiving side transmits, upon detection of a lack of a TCP segment, the same acknowledgement (ACK) three times in succession to a corresponding transmitting side. Upon receipt of such acknowledgements from the receiving side, the transmitting side retransmits the TCP segment on the basis of the sequence number included in the acknowledgement. The number of segments received in an incorrect order for the receiving side to instruct the transmitting side to retransmit the data varies depending on the operating system (OS) or settings of an employed receiver.
In retransmission control employed in the long term evolution (LTE), which is used in mobile communications, a receiving side reports a corresponding transmitting side about unreceived data when data larger than or equal to a certain amount is stored in a receiving buffer. The transmitting side that has received the report about the unreceived data from the receiving side retransmits the data.
As mentioned above, in general retransmission control, retransmission of data is performed after data larger than or equal to a certain amount is received in an incorrect order. For this reason, general retransmission control has a problem of having a large time delay in data transmission. As a technique for reducing a time delay in data transmission due to data retransmission, PTL 1 describes a transmission device configured to transmit transmission data and retransmission data that can recover the transmission data, and a receiving device capable of reducing a time delay by acquiring the transmission data from either the transmission data or the retransmission data. PTL 2 describes a relay device configured to cause the same transmission data to be transmitted multiple times irrespective of success or failure in transmission of transmission data.